package com.deft.design.simple;

/**
 * @author zdl
 * @description 懒汉式（线程安全）
 * @date 2022-04-22
 **/
public class LazySafeSingleton {

    private static LazySafeSingleton instance;

    private LazySafeSingleton() {
        System.out.println("懒汉式（线程安全）：");
        System.out.println("\r 此模式虽然是安全的，但由于把锁加到方法上后，所有的访问都需要锁占用导致资源的浪费。");
    }

    public static synchronized LazySafeSingleton getInstance() {
        if (instance == null) {
            instance = new LazySafeSingleton();
            return instance;
        }
        return instance;
    }
}
